using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Mvc.Ajax;
using ListasMusicales.Model;

namespace ListasMusicales.Controllers
{
    public class GestionVotacionesController : Controller
    {
        //
        // GET: /GestionVotaciones/

        ListasMusicalesEntities1 db = new ListasMusicalesEntities1();

        public ActionResult Index()
        {
            ViewData.Model = db.LISTA.ToList();
            return View();
        }

        //
        // GET: /GestionVotaciones/Details/5

        public ActionResult Votar(int id)
        {

            var voto = new VOTO();
            voto.ID = (from n in db.VOTO select n.ID).Count();

            var lista = db.LISTA.First(m => m.ID == id);
            voto.LISTA = lista;

            var usuario = db.USUARIO.First(m => m.ID == 1);
            voto.USUARIO = usuario;

          
            {
                try
                {
                    db.AddToVOTO(voto);
                    db.SaveChanges();

                    var votos = (from n in db.VOTO where n.LISTA.ID == id select n.ID).Count();

                    
                    return View("ListaVotada");
                    //return RedirectToAction("Index");
                }
                catch
                {
                    return View();
                }
            }
        } 


        //
        // GET: /GestionVotaciones/Create

        public ActionResult Create()
        {
            return View();
        } 

        //
        // POST: /GestionVotaciones/Create

        [AcceptVerbs(HttpVerbs.Post)]
        public ActionResult Create(FormCollection collection)
        {
            try
            {
                // TODO: Add insert logic here

                return RedirectToAction("Index");
            }
            catch
            {
                return View();
            }
        }

        //
        // GET: /GestionVotaciones/Edit/5
 
        public ActionResult Edit(int id)
        {
            return View();
        }

        //
        // POST: /GestionVotaciones/Edit/5

        [AcceptVerbs(HttpVerbs.Post)]
        public ActionResult Edit(int id, FormCollection collection)
        {
            try
            {
                // TODO: Add update logic here
 
                return RedirectToAction("Index");
            }
            catch
            {
                return View();
            }
        }
    }
}
